All groups have a level of subscribedness. For instance, if a group is on level 2, it is more subscribed than a group on level 5. You can ask Gnus to just list groups on a given level or lower (see Listing Groups), or to just check for new articles in groups on a given level or lower (see Scanning New Messages).
Remember: The higher the level of the group, the less important it is.
Gnus considers
groups from levels 1 to gnus-level-subscribed
(inclusive) (default 5) to be subscribed,
gnus-level-subscribed (exclusive) and
gnus-level-unsubscribed (inclusive) (default 7) to
be unsubscribed, gnus-level-zombie to be zombies
(walking dead) (default 8) and gnus-level-killed to
be killed (completely dead) (default 9). Gnus treats subscribed
and unsubscribed groups exactly the same, but zombie and killed
groups have no information on what articles you have read, etc,
stored. This distinction between dead and living groups isn't
done because it is nice or clever, it is done purely for reasons
of efficiency.
It is recommended that you keep all your mail groups (if any) on quite low levels (e.g. 1 or 2).
Maybe the following description of the default behavior of Gnus helps to understand what these levels are all about. By default, Gnus shows you subscribed nonempty groups, but by hitting L you can have it show empty subscribed groups and unsubscribed groups, too. Type l to go back to showing nonempty subscribed groups again. Thus, unsubscribed groups are hidden, in a way.
Zombie and killed groups are similar to unsubscribed groups in that they are hidden by default. But they are different from subscribed and unsubscribed groups in that Gnus doesn't ask the news server for information (number of messages, number of unread messages) on zombie and killed groups. Normally, you use C-k to kill the groups you aren't interested in. If most groups are killed, Gnus is faster.
Why does Gnus distinguish between zombie and killed groups? Well, when a new group arrives on the server, Gnus by default makes it a zombie group. This means that you are normally not bothered with new groups, but you can type A z to get a list of all new groups. Subscribe the ones you like and kill the ones you don't want. (A k shows a list of killed groups.)
If you want to play with the level variables, you should show some care. Set them once, and don't touch them ever again. Better yet, don't touch them at all unless you know exactly what you're doing.
Two
closely related variables are
gnus-level-default-subscribed (default 3) and
gnus-level-default-unsubscribed (default 6), which
are the levels that new groups will be put on if they are
(un)subscribed. These two variables should, of course, be inside
the relevant valid ranges.
If
gnus-keep-same-level is non-nil, some
movement commands will only move to groups of the same level (or
lower). In particular, going from the last article in one group
to the next group will go to the next group of the same level (or
lower). This might be handy if you want to read the most
important groups before you read the rest.
If this variable is best, Gnus will make the next
newsgroup the one with the best level.
All
groups with a level less than or equal to
gnus-group-default-list-level will be listed in the
group buffer by default. This variable can also be a function. In
that case, that function will be called and the result will be
used as value.
If
gnus-group-list-inactive-groups is
non-nil, non-active groups will be listed along with
the unread groups. This variable is t by default. If
it is nil, inactive groups won't be listed.
If
gnus-group-use-permanent-levels is
non-nil, once you give a level prefix to
g or l, all subsequent commands will use
this level as the “work” level.
Gnus will normally
just activate (i. e., query the server about) groups on level
gnus-activate-level or less. If you don't want to
activate unsubscribed groups, for instance, you might set this
variable to 5. The default is 6.